# 假设所有的.c文件都位于当前目录  
SRCS=$(wildcard *.c)  
  
# 将.c文件转换为.o文件（对象文件）  
OBJS=$(SRCS:.c=.o)  
  
# 定义可执行文件的名称  
EXE=main  
  
# 定义all目标，它依赖于可执行文件  
all: $(EXE)  
  
# 为每个.o文件定义一个规则  
%.o: %.c  
	gcc -c -o $@ $< -g  
  
# 定义可执行文件的规则，它依赖于所有的.o文件  
$(EXE): $(OBJS)  
	gcc -o $@ $^ -lm  
  
# 清理目标，删除所有生成的对象文件和可执行文件  
clean:  
	$(RM) $(OBJS)  

